package javaer.starter.base.domain.vo;

import lombok.AccessLevel;
import lombok.Data;
import lombok.experimental.FieldDefaults;

/**
 * 依赖
 *
 * @author yangzhen
 * @date 2023/6/5 10:56
 * @since 1.0.0
 */
@Data
@FieldDefaults(level = AccessLevel.PRIVATE)
public class DependencyVO extends BaseVO {

    /**
     * 脚手架类型唯一标识
     */
    String typeId;
    /**
     * 依赖唯一标识
     */
    String depId;
    /**
     * 依赖坐标组
     */
    String groupId;
    /**
     * 依赖坐标
     */
    String artifactId;
    /**
     * 依赖版本
     */
    String version;
    /**
     * 指定所依赖的项目的作用域，它有多种类型，表示依赖的限制范围，包括 compile, runtime, provided, test, system 和 import。
     */
    String scope;
    /**
     * 标记该依赖是否是可选的，如果标记为 "true"，则不会强制使用该依赖项。
     */
    String optional;
    /**
     * 表示依赖的文件类型，默认为 jar。
     */
    String type;
}